{% extends 'generic/object_edit.html' %}
{% load helpers %}
{% load form_helpers %}
{% load i18n %}

{% block title %}
  {% blocktrans trimmed with name=vc_form.instance %}
    Editing Virtual Chassis {{ name }}
  {% endblocktrans %}
{% endblock %}

{% block content %}
  <div class="tab-pane show active" id="edit-form" role="tabpanel" aria-labelledby="object-list-tab">
    <form action="" method="post" enctype="multipart/form-data" class="object-edit">
      {% render_errors vc_form %}
      {% for form in formset %}
        {% render_errors form %}
      {% endfor %}

      {% csrf_token %}
      {% for field in vc_form.hidden_fields %}
        {{ field }}
      {% endfor %}
      {{ pk_form.pk }}
      {{ formset.management_form }}
      <div class="field-group my-5">
        <div class="row">
          <h2 class="col-9 offset-3">{% trans "Virtual Chassis" %}</h2>
        </div>
        {% render_field vc_form.name %}
        {% render_field vc_form.domain %}
        {% render_field vc_form.description %}
        {% render_field vc_form.master %}
        {% render_field vc_form.tags %}
      </div>

      <div class="field-group my-5">
        {% render_field vc_form.comments %}
      </div>

      {% if vc_form.custom_fields %}
        <div class="field-group mb-5">
          <div class="row">
            <h2 class="col-9 offset-3">{% trans "Custom Fields" %}</h2>
          </div>
          {% render_custom_fields vc_form %}
        </div>
      {% endif %}

      <div class="field-group mb-5">
        <h2 class="text-center">{% trans "Members" %}</h2>
        <table class="table">
            <thead>
                <tr>
                    <th>{% trans "Device" %}</th>
                    <th>{% trans "ID" %}</th>
                    <th>{% trans "Rack/Unit" %}</th>
                    <th>{% trans "Serial" %}</th>
                    <th>{% trans "Position" %}</th>
                    <th>{% trans "Priority" %}</th>
                    <th></th>
                </tr>
            </thead>
            <tbody>
                {% for form in formset %}
                    {% for field in form.hidden_fields %}
                        {{ field }}
                    {% endfor %}
                    {% with device=form.instance virtual_chassis=vc_form.instance %}
                        <tr>
                            <td>{{ device|linkify }}</td>
                            <td>{{ device.pk }}</td>
                            <td>
                                {% if device.rack %}
                                    {{ device.rack }} / {{ device.position|floatformat }}
                                {% else %}
                                    {{ ''|placeholder }}
                                {% endif %}
                            </td>
                            <td>{{ device.serial|placeholder }}</td>
                            <td>
                                {{ form.vc_position }}
                                {% if form.vc_position.errors %}
                                    <small class="text-danger">{{ form.vc_position.errors.0 }}</small>
                                {% endif %}
                            </td>
                            <td>
                                {{ form.vc_priority }}
                                {% if form.vc_priority.errors %}
                                    <small class="text-danger">{{ form.vc_priority.errors.0 }}</small>
                                {% endif %}
                            </td>
                            <td>
                                {% if virtual_chassis.pk %}
                                    <a href="{% url 'dcim:virtualchassis_remove_member' pk=device.pk %}?return_url={% url 'dcim:virtualchassis_edit' pk=virtual_chassis.pk %}" class="btn btn-danger{% if virtual_chassis.master == device %} disabled{% endif %}">
                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span>
                                    </a>
                                {% endif %}
                            </td>
                        </tr>
                    {% endwith %}
                {% endfor %}
            </tbody>
        </table>
        <div class="bg-primary-subtle border border-primary rounded-1 pt-3 px-3 mb-3">
          {% render_field vc_form.changelog_message %}
        </div>
      </div>
      <div class="text-end">
          <a href="{{ return_url }}" class="btn btn-outline-secondary">{% trans "Cancel" %}</a>
          {% if vc_form.instance.pk %}
              <button type="submit" name="_update" class="btn btn-primary">{% trans "Save" %}</button>
          {% else %}
              <button type="submit" name="_create" class="btn btn-primary">{% trans "Create" %}</button>
          {% endif %}
      </div>
    </form>
  </div>
{% endblock content %}
